Skip to main content

Buzzer

Escrito por Felipe Beserra. Última atualização: 09/08/2022

Este artigo pretende expor a relação do componente buzzer com a equipe SkyRats e seus usos no nosso dia a dia. O componente em questão é utilizado para gerar SOM 🔊 a partir de eletricidade ⚡

Caso queira uma leitura interessante e MUITO mais completa sobre o tema, veja Introduction to Buzzers

Tipos de Buzzer

Um buzzer tem um funcionamento interessantíssimo e que super vale a pena dar uma olhada, PORÉM, como o intuito é mais prática do que teoria, vamos aos tipos de buzzer:

Buzzer Ativo

Utilizado com sinais binários, o buzzer ativo recebe energia e emite um som em uma fequência específica, pode ser alterada fisicamente pelo ambiente, como colocando uma fita em cima para abafar o som, muito útil como indicador de erros ou sucessos.

Buzzer Passivo

Utilizado com sinais, o buzzer passivo recebe uma frequência e emite um som correspondente, muito útil para projetos musicais.

Utilização

O uso de um buzzer varia para os casos onde busca-se reproduzir diferentes frequências sonoras e o caso onde ele será utilizado apenas como indicador sonoro.

É sempre importante ter em mente a tensão nominal de seu buzzer, normalmente é 5V.

Amplificação com Transistor

No caso do uso de um Buzzer com uma Odroid XU4 sem ShifterShield, como a voltagem de suas portas GPIO lógicas é de apenas 1.8V é necessária a adição de um transistor para amplificação do sinal. Normalmente utiliza-se um transistor comum que agirá como interruptor eletrônico em um circuito que liga o buzzer à fonte de energia com tensão correta.

Buzzer e transistor

Buzzer com circuito amplificador de transistor

Veja mais em Exemlo controle de um buzzer

Uso com Microcontrolador

Muitas vezes a aplicação do Buzzer será regrada por um microcontrolador, como um Arduino (ATMega) ou ESP.

Ativo - Microcontrolador

Conexão: Porta digital, verificar necessidade de Circuito amplificador

#define BUZZER_PIN 10

void setup() {
pinMode(BUZZER_PIN, OUTPUT);
}

void loop() {
digitalWrite(BUZZER_PIN, HIGH); // Liga Buzzer
delay(300);
digitalWrite(BUZZER_PIN, LOW); // Desliga Buzzer
delay(1000);
}

Alterar valor da varíavel BUZZER_PIN

Passivo - Microcontrolador

Uso documentado em USE a BUZZER MODULE (PIEZO SPEAKER) USING ARDUINO UNO

Conexão: Porta digital, verificar necessidade de Circuito amplificador

#define BUZZER_PIN 10

void setup() {
pinMode(BUZZER_PIN, OUTPUT);
}

void loop() {
tone(BUZZER_PIN, 1000); // Envia 1KHz
delay(300);
noTone(BUZZER_PIN); // Desliga Buzzer
delay(1000);
}

Alterar valor da varíavel BUZZER_PIN Analisar frequência que deseja ser enviada

Uso com SBC

É muito comum o uso de Buzzers com Single Board Computers(SBCs), como produtos Odroid e Raspberry, tal uso é realizado à partir das portas GPIO.

Ativo - SBC (Odroid XU4)

Conexão: Porta digital GPIO, verificar necessidade de Circuito amplificador

Dependências: WiringPi

import odroid_wiringpi as wpi

PIN = 26

class Buzzer:
def __init__(self):
self.pin = PIN
wpi.wiringPiSetup()
wpi.pinMode(self.pin, 1)

def on(self, time):
wpi.digitalWrite(self.pin, 1)
wpi.delay(time)
wpi.digitalWrite(self.pin, 0)

buzzer = Buzzer()
buzzer.on(300)

Verificar pinagem definida em wpi.wiringPiSetup() Alterar variável do pino

Passivo - SBC (Odroid XU4)

TODO: Se você fez os testes, adicionar doc aqui!

Referências